/*
 * Copyright 2022 Pnoker All Rights Reserved
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.ruoyi.project.business.controlcenter.iot.mqtt.constant;

/**
 * dc3平台常量
 *
 * @author pnoker
 */
public interface ProtocalConstant {
    /**
     */
    interface MQTT_EVENT {
        String GATEWAY_RETISTER_REQ = "registerReq";
        String GATEWAY_RETISTER_RESP = "registerResp";
        String COMMAND_RESULT = "cmdResult";
        String REPORT_ATTRIBUTE = "reportAttribute";

    }

    /**
     * 设备类型 0: 网关 1: 其他设备
     */
    interface DEVICE_TYPE {
        int GATEWAY = 0;
        int OTHER = 1;

    }

    interface COMMAND {
        String SET_ATTRIBUTE = "setAttribute";
        String GET_ATTRIBUTE = "getAttribute";

    }

    interface COMMAND_TYPE {
        String CMD = "cmd";

    }

    interface ATTRIBUTE {
        String ADD_DEVICE = "mod.add_device";
        String ADD_DEVICE_SUCCESS = "mod.new_device_added";
        String DEL_DEVICE = "mod.del_device";
        String GATEWAY_REBOOT = "gateway.reboot";
        String GATEWAY_STATUS = "gateway.status";
        String DEVICE_LIST = "mod.device_list";


        String DEVICE_LIGHT_ONOFF = "device.onoff";
        String DEVICE_ZONE_STATUS = "device.zone_status";
        String DEVICE_OCCUPANCY = "device.occupancy";
        String DEVICE_LUX = "device.lux";
        String EMBER_ZB3_ATR = "ember.zb3.atr";

    }

    // 暂时不知道这个变量的含义
    interface EP {
        int EP_1 = 1;

    }

    // 消息来源
    interface MSG_CLIENT_TYPE {
        String CLOUD = "CLOUD";
        String GATEWAY = "GATEWAY";
        String NXP = "NXP";
        String ZWAVE = "ZWAVE";
        String GREENPOWER = "GREENPOWER";
        String BLUE_TEETH = "BLE";

    }

    // 设备是否在线
    interface DEVICE_ONLINE {
        int ONLINE = 1;
        int OFFLINE = 0;
    }




}
